package com.demo.search.engine;

import org.apache.lucene.document.Document;

import com.demo.search.model.FieldModel;

/**
 * 高亮处理函数
 * 
 * @author ryuu.kk
 *
 */
public interface HighlighterHandler {

	/**
	 * 是否支持高亮
	 * @param model 对象模型
	 * @return boolean
	 */
	boolean support(FieldModel model);
	
	/**
	 * 获得高亮结果
	 * @param doc Document
	 * @param model FieldModel
	 * @return String 高亮处理后内容字段
	 */
	String render(Document doc, int docID, FieldModel model);

	/**
	 * 获得高亮结果
	 * @param analyzer 分词器
	 * @param content 检索内容
	 * @param model 检索模型对象
	 * @param preTag 高亮前缀
	 * @param postTag 高亮后缀
	 * @return String 高亮处理后内容
	 */
	String render(String content, FieldModel model);
}
